// 封装倒计时逻辑函数
import dayjs from 'dayjs'
import {computed, onUnmounted, ref} from 'vue'
import router from '@/router'

export default function useCountDown() {
    // 1. 响应式的数据
    const time = ref(0)
    let timer = null
    const formatTime = computed(() => {
        return dayjs.unix(time.value).format('mm分ss秒')
    })
    

    // 2. 开启倒计时的函数
    function start(currentTime) {
        // 核心逻辑： 每隔一秒就减一
        time.value = currentTime
       timer = setInterval(() => {
            time.value--
        // 时间为0跳转首页，清除定时器
            if (time.value === 0) {
                clearInterval(timer)
                console.log(99333);
                router.push('/layout/home')
            }
        }, 1000)
    }

    

    // 组件销毁时，清除定时器
    onUnmounted(() => {
        timer && clearInterval(timer)
        console.log('组件已销毁，清除定时器');
    })

    return {
        formatTime,
        start
    }
}